home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Commodore Disc 53
/
Commodore_Disc_53_19xx_-_de.d64
/
vier gewinnt
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
5KB
|
216 lines
1000 rem: ***************************
1010 rem: * *
1020 rem: * 4 - gewinnt *
1030 rem: * *
1040 rem: * in 1988 by motion soft *
1050 rem: * programming *
1060 rem: * done by a.mengel *
1070 rem: * *
1080 rem: * *
1090 rem: * *
1100 rem: * *
1110 rem: * *
1120 rem: ***************************
1130 rem
1140 fort=1to1000:next
1150 dim a(10,10),k(10),j(10)
1160 poke 53280,0: poke53281,0
1170 poke54296,15:poke54277,16+9
1180 poke54278,4*16+4
1190 gosub 2650
1200 fort=1to500:next
1210 print"[147]":restore
1220 fort=1to1000:next
1230 printtab(8)"**** vier gewinnt ****"
1240 for g = 55344 to 55344+23
1250 read f:pokeg,f:next
1260 printtab(3)"geben sie nun bitte die namen"
1270 printtab(3)"der beiden spieler ein !"
1280 print""
1290 z=1:k(z)=0
1300 printtab(3)"name spieler"z":";
1310 fors=1to10
1320 get a$:ifa$=chr$(13)andz=2then1430
1330 ifa$=chr$(13)then1400
1340 ifa$=chr$(20)then1410
1350 ifa$>chr$(64)anda$<chr$(91)then1370
1360 goto1320
1370 ifs=10then1320
1380 printa$;:a(s,z)=asc(a$)
1390 k(z)=k(z)+1:nexts
1400 z=2:print"":goto1300
1410 k(z)=0:print"[145]"
1420 printtab(3);" [145]":goto1300
1430 fort=1to500:next
1440 print"[147]":restore
1450 fort=1to1000:next
1460 printtab(8)"**** vier gewinnt ****"
1470 for g = 55344 to 55344+23
1480 read f:pokeg,f:next
1490 print"" chr$(154)
1500 w1$="[176][195][178][195][178][195][178][195][178][195][178][195][178][195][174]"
1510 w2$="[194] [194] [194] [194] [194] [194] [194] [194]"
1520 w3$="[171][195][219][195][219][195][219][195][219][195][219][195][219][195][179]"
1530 w4$="[173][195][177][195][177][195][177][195][177][195][177][195][177][195][189]"
1540 print tab(12)w1$
1550 fortr=1to5
1560 print tab(12)w2$
1570 print tab(12)w3$
1580 nexttr:print tab(12)w2$:print tab(12);w4$
1590 printtab(12)" 1 2 3 4 5 6 7"chr$(159)
1600 z=1
1610 printtab(3)"spieler"z":";
1620 ifk(z)=0then 1660
1630 fors=1tok(z)
1640 print chr$(a(s,z));
1650 nexts
1660 if z=1thenprint"([209]) am zug.":poke55296+15+k(z)+40*21,10:goto1680
1670 print"([215]) am zug.":poke55296+15+k(z)+40*21,7
1680 poke215,0:poke198,0
1690 printtab(3)"welche spalte"
1700 fort=1to500:next
1710 printtab(17)"[145]?[146] "
1720 fort=1to100
1730 getx$:ifx$>chr$(48) and x$<chr$(56)then 1790
1740 nextt
1750 printtab(17)"[146][145]?"
1760 fort=1to500
1770 nextt
1780 goto1710
1790 x=asc(x$)
1800 printtab(17)"[145]"chr$(x)
1810 x=x-48
1820 fort=1to750:next
1830 fort=0to10 step2
1840 y=1035+x*2+40*(15-t)
1850 ifpeek(y)=81 then nextt
1860 ifpeek(y)=87 then nextt
1870 ifpeek(y) <>81 andpeek(y)<>87then 1970
1880 printtab(17)"[145]ungueltig !!"
1890 poke54276,33
1900 poke54273,4:poke54272,27
1910 fort=1to1000:next
1920 poke54276,0
1930 fort=1to500:next
1940 printtab(3);"[145] "
1950 print"[145][145][145]"
1960 goto1690
1970 ifz=1then pokey,81:poke55307+x*2+40*(15-t),10:goto1990
1980 pokey,87:poke55307+x*2+40*(15-t),7
1990 poke54276,33
2000 poke54273,62:poke54272,5
2010 fort=1to100:next
2020 poke54276,0
2030 forp=1to4
2040 on p goto 2080,2100,2110,2120
2050 nextp
2060 sp=sp+1:ifsp=42then 2550
2070 goto2300
2080 q=78:goto 2130
2090 ifi<>tthen2150
2100 y=y-h*q-q:q=82:goto 2130
2110 y=y-h*q-q:q=2:goto 2130
2120 y=y-h*q-q:q=80:goto 2130
2130 i=0:j(i)=y
2140 fort=1to3
2150 y=y-q
2160 ifpeek(y)=81andz=1then gosub2270
2170 ifpeek(y)=87andz=2then gosub2270
2180 ifi<>tthen 2200
2190 nextt
2200 y=y+i*q+q:h=0
2210 fort=1to3
2220 y=y+q
2230 ifpeek(y)=81andz=1then gosub2270
2240 ifpeek(y)=87andz=2then gosub2270
2250 ifh<>tthen2050
2260 nextt
2270 i=i+1:j(i)=y:h=h+1
2280 ifi=3then2360
2290 return
2300 print"[145][145][145] "
2310 print" "
2320 print"[145][145][145][145][145][145][145]"
2330 ifz=2then1600
2340 z=z+1
2350 goto1610
2360 printtab(3)"[145][145][145]spieler"z":";
2370 ifk(z)=0then2410
2380 fors=1tok(z)
2390 print chr$(a(s,z));
2400 nexts
2410 if z=1then print"([209]) gewinnt.":poke55296+15+k(z)+40*21,10:goto2430
2420 print"([215]) gewinnt.":poke55296+15+k(z)+40*21,7
2430 printtab(3)"druecken sie die return taste !"
2440 g1=j(0)+55307-1035
2450 g2=j(1)+55307-1035
2460 g3=j(2)+55307-1035
2470 g4=j(3)+55307-1035
2480 get a$:ifa$=chr$(13)then 2520
2490 pokeg1,1:pokeg2,1:pokeg3,1:pokeg4,1
2500 pokeg1,0:pokeg2,0:pokeg3,0:pokeg4,0
2510 goto2480
2520 print"[147]"
2530 fort=1to2000:next
2540 goto2650
2550 print"[145][145][145][145][145][145] "
2560 print" "
2570 printtab(3)"[145]das spiel endet unentschieden"
2580 printtab(3)"druecken sie die return taste"
2590 get a$:ifa$=chr$(13)then 2610:
2600 goto2590
2610 fort=1to500:next
2620 print"[147]"
2630 fort=1to1000:next
2640 goto2650
2650 restore:clr:print"[147]" chr$(159)
2660 printtab(8)"**** vier gewinnt ****"
2670 for g = 55344 to 55344+23
2680 read f:pokeg,f:next
2690 data 11,12,15,1,0,0,1,3,5,7,0,13,14,7,8,4,5,3,0,0,1,15,12,11
2700 print tab(9)"in 1988 by motion soft"
2710 print tab(6)"programming done by a.mengel"
2720 print tab(10)" f 1 : spielbeginn"
2730 print tab(10)" f 3 : spielregeln"
2740 print tab(10)" f 5 : spielende"
2750 geta$:ifa$=chr$(134)then 2790
2760 if a$=chr$(133)then gosub 1200
2770 if a$=chr$(135)then sys64738
2780 goto 2750
2790 fort=1to500:next
2800 print"[147]" chr$(158)
2810 fort=1to1000:next
2820 print tab(14)"[145]spielregeln"
2830 print tab(14)"-----------"
2840 print chr$(159)
2850 print tab(2)"vier gewinnt ist ein spiel fuer"
2860 print tab(2)"zwei spieler.vor ihnen auf dem"
2870 print tab(2)"bildschirm befindet sich eine art"
2880 print tab(2)"gitter mit 6 reihen und 7 spalten."
2890 print tab(2)"die beiden spieler muessen versuchen"
2900 print tab(2)"vier ihrer spielmarken senkrecht,"
2910 print tab(2)"waagerecht oder diagonal nebeneinander"
2920 print tab(2)"zu positionieren.wer das als erster"
2930 print tab(2)"schafft,hat gewonnen."
2940 print tab(2)"< druecken sie die return taste >"
2950 get a$:ifa$=chr$(13)then2970
2960 goto2950
2970 fort=1to500:next
2980 print"[147]" chr$(158)
2990 fort=1to1000:next
3000 print tab(14)"[145]spielregeln"
3010 print tab(14)"-----------"
3020 print chr$(159)
3030 print tab(2)"jeder der spieler besitzt aber"
3040 print tab(2)"nur 21 spielmarken.wenn sie"
3050 print tab(2)"aufgebraucht sind kommt es"
3060 print tab(2)"zu einem unentschieden."
3070 print tab(2)"viel erfolg !!!"
3080 print tab(2)"< druecken sie die return taste >"
3090 get a$:ifa$=chr$(13)then 3110
3100 goto 3090
3110 fort=1to500:next
3120 print"[147]"
3130 fort=1to1000:next
3140 restore:goto 2650